package com.cskaoyan.javase.array._0introduction;
/**
 * 数组的引入
 * 引例：
 * 假设一个班上有80个人，现在需要统计，某一门课程的平均成绩，是否需要定义80个变量？
 *
 * 编写一个程序，需要储存12个月份的天数，是否要定义12个变量呢？
 * 编写一个扑克程序，需要储存54张扑克的信息，是否要定义54个变量？
 * 如果程序需要储存上成千上万的数据，程序员是不是也要逐一定义成千上万个变量呢？
 *
 * 很明显，如果程序需要多少数据，就要定义多少个变量，也太过于麻烦了，并且多个变量单独存在没有任何关联，也不方便管理和维护。这样就好比，去超市购物，谁有人会把东西一个一个带回家。购物需要"袋子"装东西，Java变量也需要一个容器来存放它们。
 *
 * Java的容器有很多，最基本的容器就是数组（Array），定义一个数组，就可以存储很多数据。
 * 数组本质上是一个容器,它也是一个变量,只不过这个容器变量,可以存储很多其他变量(数据).
 * Java当中的容器,除了数组,实际上最常用的是集合,是高级容器
 *
 * 思考：
 * 数组作为一个容器:
 * 数组中的数据是胡乱的摆放在一起吗？数组对装在里面的数据有什么要求吗？
 * 答案显然不是,数组中的元素是有序的,其次某一种数组,必须存放某一种单一数据类型的元素.
 *
 * 数组是存储多个，具有相同数据类型的数据元素的有序容器（集合）。
 * 定义中的重点是：
 *      1.能够存储多个数据元素,数组是容器.
 *      2.数组中的这些数据元素的数据类型，必须一致
 *          注: 数组的类型由数组中存放元素的类型决定
 *          比如一个int类型数组,就只能装int类型元素
 *          装int类型元素的数组,一定是int数组
 *      3.这些数据是有序的：
 *          数组中的每个存储单元，都有唯一编号(下标)，该编号，从左向右，从0开始编号，最大值是数组长度-1
 *          这种编号，专业的术语称之为下标或者索引（index）
 *
 *  补充:
 *          1.数组是一个引用数据类型
 *          2.数组当中可以存放基本数据类型元素,也可以存放引用数据类型元素.
 *              甚至数组中还可以继续装数组(多维数组)
 *
 * @since 16:27
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo {
}
